MMXM ICT [TradingFinder] Market Maker Model PO3 CHoCH/CSID + FVG🔵 Introduction
The MMXM Smart Money Reversal leverages key metrics such as SMT Divergence, Liquidity Sweep, HTF PD Array, Market Structure Shift (MSS) or (ChoCh), CISD, and Fair Value Gap (FVG) to identify critical turning points in the market. Designed for traders aiming to analyze the behavior of major market participants, this setup pinpoints strategic areas for making informed trading decisions.
The document introduces the MMXM model, a trading strategy that identifies market maker activity to predict price movements. The model operates across five distinct stages: original consolidation, price run, smart money reversal, accumulation/distribution, and completion. This systematic approach allows traders to differentiate between buyside and sellside curves, offering a structured framework for interpreting price action.
Market makers play a pivotal role in facilitating these movements by bridging liquidity gaps. They continuously quote bid (buy) and ask (sell) prices for assets, ensuring smooth trading conditions.
By maintaining liquidity, market makers prevent scenarios where buyers are left without sellers and vice versa, making their activity a cornerstone of the MMXM strategy.
SMT Divergence serves as the first signal of a potential trend reversal, arising from discrepancies between the movements of related assets or indices. This divergence is detected when two or more highly correlated assets or indices move in opposite directions, signaling a likely shift in market trends.
Liquidity Sweep occurs when the market targets liquidity in specific zones through false price movements. This process allows major market participants to execute their orders efficiently by collecting the necessary liquidity to enter or exit positions.
The HTF PD Array refers to premium and discount zones on higher timeframes. These zones highlight price levels where the market is in a premium (ideal for selling) or discount (ideal for buying). These areas are identified based on higher timeframe market behavior and guide traders toward lucrative opportunities.
Market Structure Shift (MSS), also referred to as ChoCh, indicates a change in market structure, often marked by breaking key support or resistance levels. This shift confirms the directional movement of the market, signaling the start of a new trend.
CISD (Change in State of Delivery) reflects a transition in price delivery mechanisms. Typically occurring after MSS, CISD confirms the continuation of price movement in the new direction.
Fair Value Gap (FVG) represents zones where price imbalance exists between buyers and sellers. These gaps often act as price targets for filling, offering traders opportunities for entry or exit.
By combining all these metrics, the Smart Money Reversal provides a comprehensive tool for analyzing market behavior and identifying key trading opportunities. It enables traders to anticipate the actions of major players and align their strategies accordingly.
MMBM :
MMSM :
🔵 How to Use
The Smart Money Reversal operates in two primary states: MMBM (Market Maker Buy Model) and MMSM (Market Maker Sell Model). Each state highlights critical structural changes in market trends, focusing on liquidity behavior and price reactions at key levels to offer precise and effective trading opportunities.
The MMXM model expands on this by identifying five distinct stages of market behavior: original consolidation, price run, smart money reversal, accumulation/distribution, and completion. These stages provide traders with a detailed roadmap for interpreting price action and anticipating market maker activity.
🟣 Market Maker Buy Model
In the MMBM state, the market transitions from a bearish trend to a bullish trend. Initially, SMT Divergence between related assets or indices reveals weaknesses in the bearish trend. Subsequently, a Liquidity Sweep collects liquidity from lower levels through false breakouts.
After this, the price reacts to discount zones identified in the HTF PD Array, where major market participants often execute buy orders. The market confirms the bullish trend with a Market Structure Shift (MSS) and a change in price delivery state (CISD). During this phase, an FVG emerges as a key trading opportunity. Traders can open long positions upon a pullback to this FVG zone, capitalizing on the bullish continuation.
🟣 Market Maker Sell Model
In the MMSM state, the market shifts from a bullish trend to a bearish trend. Here, SMT Divergence highlights weaknesses in the bullish trend. A Liquidity Sweep then gathers liquidity from higher levels.
The price reacts to premium zones identified in the HTF PD Array, where major sellers enter the market and reverse the price direction. A Market Structure Shift (MSS) and a change in delivery state (CISD) confirm the bearish trend. The FVG then acts as a target for the price. Traders can initiate short positions upon a pullback to this FVG zone, profiting from the bearish continuation.
Market makers actively bridge liquidity gaps throughout these stages, quoting continuous bid and ask prices for assets. This ensures that trades are executed seamlessly, even during periods of low market participation, and supports the structured progression of the MMXM model.
The price’s reaction to FVG zones in both states provides traders with opportunities to reduce risk and enhance precision. These pullbacks to FVG zones not only represent optimal entry points but also create avenues for maximizing returns with minimal risk.
🔵 Settings
Higher TimeFrame PD Array : Selects the timeframe for identifying premium/discount arrays on higher timeframes.
PD Array Period : Specifies the number of candles for identifying key swing points.
ATR Coefficient Threshold : Defines the threshold for acceptable volatility based on ATR.
Max Swing Back Method : Choose between analyzing all swings ("All") or a fixed number ("Custom").
Max Swing Back : Sets the maximum number of candles to consider for swing analysis (if "Custom" is selected).
Second Symbol for SMT : Specifies the second asset or index for detecting SMT divergence.
SMT Fractal Periods : Sets the number of candles required to identify SMT fractals.
FVG Validity Period : Defines the validity duration for FVG zones.
MSS Validity Period : Sets the validity duration for MSS zones.
FVG Filter : Activates filtering for FVG zones based on width.
FVG Filter Type : Selects the filtering level from "Very Aggressive" to "Very Defensive."
Mitigation Level FVG : Determines the level within the FVG zone (proximal, 50%, or distal) that price reacts to.
Demand FVG : Enables the display of demand FVG zones.
Supply FVG : Enables the display of supply FVG zones.
Zone Colors : Allows customization of colors for demand and supply FVG zones.
Bottom Line & Label : Enables or disables the SMT divergence line and label from the bottom.
Top Line & Label : Enables or disables the SMT divergence line and label from the top.
Show All HTF Levels : Displays all premium/discount levels on higher timeframes.
High/Low Levels : Activates the display of high/low levels.
Color Options : Customizes the colors for high/low lines and labels.
Show All MSS Levels : Enables display of all MSS zones.
High/Low MSS Levels : Activates the display of high/low MSS levels.
Color Options : Customizes the colors for MSS lines and labels.
🔵 Conclusion
The Smart Money Reversal model represents one of the most advanced tools for technical analysis, enabling traders to identify critical market turning points. By leveraging metrics such as SMT Divergence, Liquidity Sweep, HTF PD Array, MSS, CISD, and FVG, traders can predict future price movements with precision.
The price’s interaction with key zones such as PD Array and FVG, combined with pullbacks to imbalance areas, offers exceptional opportunities with favorable risk-to-reward ratios. This approach empowers traders to analyze the behavior of major market participants and adopt professional strategies for entry and exit.
By employing this analytical framework, traders can reduce errors, make more informed decisions, and capitalize on profitable opportunities. The Smart Money Reversal focuses on liquidity behavior and structural changes, making it an indispensable tool for financial market success.
Komut dosyalarını "high low" için ara
Volume Comparison with Buyer/Seller PressureTHIS indicator is well-structured and provides a comprehensive way to analyze volume alongside buyer and seller pressure. This indicator helps traders analyze volume dynamics in the stock or cryptocurrency market while simultaneously assessing buyer and seller pressure. Its use case revolves around identifying strong buying or selling activity, neutral conditions, and volume trends over different time periods. Below is a breakdown of how to use this indicator:
This Pine Script indicator helps traders analyze volume dynamics in the stock or cryptocurrency market while simultaneously assessing buyer and seller pressure. Its use case revolves around identifying strong buying or selling activity, neutral conditions, and volume trends over different time periods. Below is a breakdown of how to use this indicator:
Key Features and Use Case
Volume-Based Insights:
Displays daily volume and compares it to the 3-day, 5-day, 10-day, and 20-day moving averages of volume. Helps traders identify days with unusual volume spikes relative to historical averages, signaling potential reversals or breakouts.
Buyer and Seller Pressure:
Measures buyer pressure: how much the closing price dominates the trading range of the day.
Measures seller pressure: how much the opening price dominates the trading range of the day.
Highlights areas where buying or selling pressure is particularly strong (≥ 0.75).
Background Signals:
Green Background: Strong buyer pressure (indicative of potential upward momentum).
Red Background: Strong seller pressure (indicative of potential downward momentum).
Gray Background: Neutral market conditions (neither buying nor selling dominance).
Alerts:
Alerts traders when:
Strong buying signals are detected.
Strong selling signals are detected.
The market is neutral, with neither buyers nor sellers in control.
Decision-Making Aid:
Combines volume analysis with price action (buyer/seller pressure) to help traders identify:
Potential breakout opportunities.
Reversal points.
Neutral zones where a trader might avoid trading due to indecision in the market.
How to Use It in Trading:------->
Add the Indicator:
Apply this Indicator to your Trading View chart to start visualizing the buyer/seller pressure and volume averages.
Interpret Volume Trends:
Look for days when daily volume significantly exceeds the 3-day, 5-day, 10-day, or 20-day average.
These could indicate:
A breakout when aligned with strong buyer pressure.
A sell-off when aligned with strong seller pressure.
React to Background Colors:
* Green Background (Strong Buyer Pressure):
Suggests buyers are dominating the market, and upward momentum is likely.
Use this signal to consider buying opportunities, especially if volume is above average.
* Red Background (Strong Seller Pressure):
Indicates sellers are in control, and prices might fall.
Use this signal to consider selling or shorting opportunities.
* Gray Background (Neutral Market):
Reflects indecision; avoid entering trades during these periods unless other signals support a strategy.
Volume Confirmation:
Combine volume analysis with buyer/seller pressure to confirm trends.
Example: A high daily volume with strong buyer pressure signals a high-probability uptrend.
Set Alerts:
Enable alerts to receive real-time notifications when the market generates strong buy/sell signals or enters a neutral zone.
Who Can Benefit:
* Day Traders: Quickly assess intraday market dynamics and volume trends.
* Swing Traders: Identify breakout opportunities or reversal points based on strong buyer/seller pressure.
* Volume Analysts: Compare historical volume averages to current conditions for deeper insights.
Limitations:
Does not guarantee success—should be combined with other technical indicators or strategies.
In low-volume markets, signals may produce false positives or unreliable results.
Assumes traders have basic knowledge of price action and volume analysis.
By integrating this indicator into your strategy, you gain a powerful tool to analyze buyer/seller dominance alongside volume trends, improving your market timing and trade execution.
The Buyer and Seller Pressure components in this indicator provide crucial insights into the market's sentiment and momentum by analyzing the price action relative to the trading volume. Here's how they are used:
1. Buyer Pressure:
Formula:
Buyer Pressure = (Close − Open) / (High − Low )
Interpretation:
* A high buyer pressure (≥ 0.75) indicates strong bullish sentiment, where the price closes much higher than it opened, and the range (high-low) is sufficiently wide.
* It identifies periods of aggressive buying, often signaling potential bullish trends or confirming upward momentum.
2. Seller Pressure:
Formula:
Seller Pressure = (Close − Open ) / (High -Low )
Interpretation:
*A high seller pressure (≥ 0.75) suggests strong bearish sentiment, where the price closes much lower than it opened, within a wide range.
*It helps identify periods of aggressive selling, signaling potential bearish trends or downward momentum.
Purpose in the Indicator:
1. Market Sentiment Analysis:
* Buyer Pressure and Seller Pressure allow traders to gauge market sentiment—whether buyers or sellers dominate a particular time frame.
* This helps in identifying trend reversals or confirmations.
2. Decision-Making Framework:
* The indicator uses thresholds (default 0.75) to classify the market into:
* Strong Buy Signal: When buyer pressure is dominant.
* Strong Sell Signal: When seller pressure is dominant.
* Neutral Signal: When neither buyer nor seller pressure dominates.
*This classification provides a straightforward decision-making tool for traders.
Risk Management:
*By identifying periods of strong buying or selling, traders can avoid entering trades in highly volatile or one-sided markets, which helps reduce risk.
Volume Confirmation:
*Integrating volume data with buyer/seller pressure helps confirm trends. For example:
*High buyer pressure accompanied by higher-than-average volume strengthens the bullish signal.
*Similarly, high seller pressure with higher-than-average volume confirms bearish signals.
Trade Timing:
*The indicator highlights conditions of potential entry (strong buy) or exit (strong sell), allowing traders to time their trades better based on real-time market activity.
Use Case:
*Example:
*Suppose the indicator shows Buyer Pressure = 0.85 with daily volume above the 3-day average. This combination suggests strong bullish activity with momentum, signaling a buy opportunity.
*Conversely, if Seller Pressure = 0.80 with volume above the 5-day average, it signals strong bearish momentum, ideal for selling or shorting.
This indicator combines buyer/seller pressure with volume dynamics, making it valuable for short-term and intraday traders looking for precise market entries and exits.
The background color in this indicator plays an important visual role in helping traders quickly identify the market sentiment based on buyer and seller pressure. It provides a dynamic, color-coded background that changes depending on the strength of the market's buying or selling activity.
Here's how it works:
Background Color Logic:
1. Green Background (Strong Buy Signal):
*Condition: The background turns green when buyer pressure is greater than or equal to 0.75 (strong buying pressure).
*Interpretation: A green background indicates that there is significant bullish sentiment in the market, with strong buying activity. Traders can interpret this as an environment conducive to buying or holding long positions.
*Visual Effect: This helps to quickly spot bullish market conditions, reinforcing potential entry signals for buyers.
2.Red Background (Strong Sell Signal):
*Condition: The background turns red when seller pressure is greater than or equal to 0.75 (strong selling pressure).
*Interpretation: A red background indicates that the market is dominated by selling, showing strong bearish sentiment. Traders can consider this as a signal to sell or short the asset.
*Visual Effect: The red background highlights moments when the market is heavily selling, prompting traders to either exit long positions or take short positions.
Gray Background (Neutral/Indecision Zone):
Condition: The background turns gray when neither buyer nor seller pressure exceeds 0.75. This means the market is neutral, with no dominant bullish or bearish sentiment.
Interpretation: A gray background suggests market indecision or balance between buyers and sellers. It can indicate periods of consolidation or sideways movement where no strong trend is forming.
Visual Effect: The gray background helps traders avoid entering trades when the market lacks a clear direction or when the sentiment is neutral, reducing risk during indecisive times.
Practical Use:
Instant Visual Confirmation:
*Traders can use the background color as an instant confirmation of the market’s sentiment. For instance, if the background turns green, traders might feel more confident in making a long (buy) trade.
*If the background turns red, it serves as a strong visual cue to short or exit a long position.
Helps with Trade Timing:
*The background color can be used in conjunction with other indicators and volume data to time entries and exits more effectively. For example:
*A green background with strong volume indicates a strong trend that could justify a buy.
*A red background with a significant volume surge signals strong selling pressure, which could prompt a sell.
Simplifies Market Analysis:
*For traders who prefer visual cues over complex analysis, the background color simplifies market conditions. Instead of focusing on individual numbers or values, the color-coded background gives them a quick, intuitive view of the market sentiment.
Summary:
* Green background = Strong buying pressure (bullish sentiment)
* Red background = Strong selling pressure (bearish sentiment)
* Gray background = Neutral market (indecision or balance between buyers and sellers)
This background color functionality helps traders stay aware of the prevailing market sentiment at a glance, providing an intuitive way to guide trading decisions.
Pivot Market StructureDescription and Features
This script is designed to enhance technical analysis by identifying key market structure levels. It uses a price action trail (based on the last highest/lowest price) and pivot points to track market trends, offering insights into potential reversal zones or trend continuation signals.
How the Script Works
High/Low Trail Logic: The script includes a trail mechanism that compares the current price with the last highest and lowest price, determining whether the price has breached these levels. This helps pinpoint key price action events and potential trend shifts. Unlike pivot points the price action trail is more responsive changes within the market structure.
Step Size and Length for High/Low Trail:
- The Step Length parameter defines how many bars are used to compare the current price against the last highest/lowest price, providing a measure of price extremes.
- The Length parameter determines the number of bars considered for calculating the highest/lowest price since the last price action event (either price surpassing a previous high or dipping below a previous low).
Pivot Point Calculation: Pivot Point Highs are calculated by the number of bars with lower highs on either side of a Pivot Point High calculation. Similarly, Pivot Point Lows are calculated by the number of bars with higher lows on either side of a Pivot Point Low calculation. The script draws a line from/to every calculated pivot point to highlight market structure extremes. It can optionally extend these pivot lines to the left for added context, providing historical reference for decision-making.
Summary
By combining both pivot analysis and price action trailing techniques, the script provides a comprehensive view of a pivot point based market structure.
13W High/Low/Fibs w/100D SMAIndicator: 13 Week High/100 Day SMA/13 Week Low with 0.382, 0.5, and 0.618 Fibonacci Levels
Description:
This indicator for TradingView, written in Pine Script version 6
It displays a table on the chart that provides a visual analysis of key price levels based on a 13-week timeframe and a 100-day Simple Moving Average (SMA).
Core Calculations:
100-Day SMA: The indicator calculates the 100-day Simple Moving Average of the closing price using daily data. The SMA is a widely used trend-following indicator.
13-Week High and Low: The indicator calculates the highest high and lowest low over the past 13 weeks using weekly data. This provides a longer-term perspective on the price range.
13-Week Fibonacci Retracement Levels: Based on the calculated 13-week high and low, the script determines the 0.382, 0.5, and 0.618 Fibonacci retracement levels.
The table includes the following information:
13W High: The highest price reached over the last 13 weeks.
100D SMA: The calculated 100-day Simple Moving Average value.
13W Low: The lowest price reached over the last 13 weeks.
Fibonacci Levels: The 0.382, 0.5, and 0.618 Fibonacci retracement levels, labeled as "↗," "|," and "↘," respectively.
Support and Resistance TrendlinesStrategy:
Support: Identified as the lowest low over a specific period.
Resistance: Identified as the highest high over a specific period.
Dynamic Trendlines: We’ll use the concept of a rolling window to calculate the highest highs and lowest lows over the last n bars (you can adjust the number of bars for more sensitivity).
Explanation:
Lookback Period (length): The number of bars over which we calculate the support and resistance levels. You can adjust this value depending on the timeframe and the sensitivity you want for the trendlines.
Resistance: This is the highest high over the length of bars. We use ta.highest(high, length) to find the highest high within the specified lookback period.
Support: This is the lowest low over the length of bars. We use ta.lowest(low, length) to find the lowest low within the specified lookback period.
Plotting the Lines:
We plot the support and resistance as horizontal lines on the chart using plot().
Additionally, we create dynamic trendlines that update automatically with each new bar. The line.new function creates lines that can be modified dynamically as new price data comes in.
Line Persistence:
The line functions are used to create horizontal lines that persist across bars. The trendlines adjust their position as the bars move forward.
How It Works:
This indicator will automatically detect the highest and lowest prices over the last n bars and draw support (green line) and resistance (red line) levels on the chart.
The trendlines will adjust as the market evolves and provide visual reference points for potential areas of price reversal.
How to Use This Script:
Copy and paste the Pine Script code into the Pine Script Editor on TradingView.
Save the script, and then add it to your chart.
Adjust the Lookback Period input to suit your trading strategy and timeframe.
The support and resistance levels will be drawn dynamically, and the lines will update as new bars form.
Customizations:
You can modify the number of bars (length) used to calculate support and resistance, depending on the timeframes you're interested in.
If you need more advanced trendline drawing (such as drawing trendlines between significant high/low points or automatic adjustment to more complex patterns), you might need to implement more advanced logic using peaks and valleys or price action patterns.
Let me know if you need any further adjustments!
Candle Open Time labels (& TAPDA Lines)Description of the "4-Hour Candle Opening Times (TAPDA Lines)" Indicator
The "4-Hour Candle Opening Times (TAPDA Lines)" indicator integrates key principles of the Time and Price Action Trading Algorithm (TAPTA) with practical tools for analyzing market behavior. This script is designed for traders who leverage the interaction between time and price to identify opportunities in the market. The indicator supports the identification of significant price levels and potential areas of interest based on historical data and recurring patterns tied to specific timeframes.
Core Concepts
Time and Price Interaction (TAPTA Logic):
The script implements TAPTA principles by focusing on time intervals (4-hour candles) and the price action associated with those intervals.
Traders use this logic to recognize how prices behave at specific times, identifying patterns, levels of support or resistance, and potential reversals.
Highs and Lows Recognition (TAPDA):
The indicator includes logic for identifying and marking "Tapped Highs and Lows," which occur when price action retraces to previously significant levels within a specified tolerance. These taps are visually represented with horizontal lines, enabling traders to spot recurring price behaviors and levels of interest.
Dynamic Levels for Decision-Making:
By combining time and price, the script visualizes key price levels and their relevance over time, equipping traders with actionable insights for entry, exit, and risk management.
Indicator Features
1. Visual Representation of Candle Opening Times
The indicator marks the opening times of 4-hour candles on the chart.
A customizable label system displays the time in either a 12-hour or 24-hour format, with options to toggle the visibility of AM/PM suffixes.
2. TAPDA Logic
Identifies and highlights price levels that have been tapped within a specified tolerance.
Horizontal lines are drawn to mark these levels, allowing traders to see historical price levels acting as support or resistance.
The "Tapped Highs and Lows" are updated dynamically based on the most recent price action.
3. Timeframe-Specific Filtering
Users can limit the display to specific times of interest, such as 2 AM, 6 AM, and 10 AM, by toggling the "GCT (General Candle Times)" option.
Additional options allow filtering TAPDA logic by AM or PM timeframes, catering to traders who focus on specific market sessions.
4. Adjustable Plotting Limits
The script incorporates settings for controlling the maximum number of labels and lines displayed on the chart:
Max Labels: Limits the number of labels plotted for 4-hour candle opening times.
Max TAPDA Lines: Limits the number of TAPDA horizontal lines displayed.
A "Sync Lines and Labels" option ensures the same number of labels and lines are plotted when enabled, providing a consistent and clutter-free visualization.
5. Plot Maximum Capability
A "Plot Max" feature allows users to override the default behavior and force the plotting of the maximum allowed labels and lines, providing a comprehensive view of historical data.
6. User-Friendly Customization
Fully customizable label styles, including options for position, size, color, and background opacity.
Adjustable tolerance levels for TAPDA lines ensure compatibility with different market conditions and trading strategies.
Settings for flipping or aligning label positions above or below candles, or locking them to the opening price.
Script Logic
The script is built to prioritize efficiency and clarity, adhering to TradingView's Pine Script best practices and community standards:
Initialization:
Arrays are used to store historical price data, including highs, lows, and timestamps, ensuring only the necessary amount of data is processed.
A flexible and efficient data management system maintains a rolling window of data for both labels and TAPDA lines, ensuring smooth performance.
Label and Line Plotting:
Labels are plotted dynamically at user-defined positions and styles to mark the opening times of 4-hour candles.
TAPDA lines are drawn between historical high or low points and the current price action when the tolerance condition is met.
Limit Management:
The script enforces limits on the number of labels and lines plotted on the chart to maintain visual clarity.
Users can enable synchronization between the maximum labels and lines to ensure consistent visualization.
Customization Options:
Extensive customization settings allow traders to tailor the indicator to their strategies and preferences, including:
Label and line styles.
Session filtering (AM, PM, or specific times).
Display limits and synchronization options.
Capabilities
1. Enhance Time-Based Analysis
By marking significant times (4-hour candle openings), traders can identify key market phases and recurring behaviors tied to specific hours.
2. Leverage Historical Price Action
TAPDA logic highlights areas where price action interacts with historical highs and lows, providing actionable insights into potential support or resistance zones.
3. Improve Decision-Making
The indicator supports informed decision-making by blending visual data with time and price action principles, helping traders spot opportunities and mitigate risks.
4. Flexible Application Across Strategies
Suitable for day traders, swing traders, and position traders who utilize time and price action for trend analysis, reversals, or breakout strategies.
Best Practices for Use
Key Levels Analysis:
Focus on labels and TAPDA lines near critical price zones to gauge potential market reactions.
Session-Based Trading:
Use AM/PM filters or GCT settings to isolate specific trading sessions relevant to your strategy.
Combine with Other Indicators:
Enhance the effectiveness of this indicator by combining it with moving averages, RSI, or other tools for confirmation.
Risk Management:
Use the identified levels for stop-loss placement or target setting to align with your risk tolerance.
BuySell%_ImtiazH_v2BuySell%_ImtiazH
This indicator includes two powerful volume metrics to complement your trading analysis:
30-Day Avg Vol (Blue Line): Tracks the average volume over the past 30 days, providing a baseline for typical trading activity.
Breakout Vol (White Line): Highlights the volume threshold needed for a potential breakout, calculated as a user-defined percentage above the 30-day average volume (default: 40%).
In addition to these enhancements, the indicator breaks down total trading volume into buying and selling components and calculates the percentage of buy volume for each bar.
🟥 Red Bars: Represent total volume.
🟩 Teal Bars: Show the buying volume within each candle.
🟨 Buy %: Displays the percentage of buy volume dynamically in the indicator panel, highlighted in yellow for quick visibility.
Use this tool to easily spot accumulation (buying pressure) or distribution (selling pressure) trends, customize breakout thresholds, and identify key breakout opportunities. Simple, clear, and effective for volume-based analysis!
How Are Buy Volume and Sell Volume Calculated?
This indicator uses a proportional approach to estimate buy and sell volumes based on price action:
Buy Volume: The portion of total volume where the price is moving upward, representing trades executed at the ask price.
Formula:
Buy Volume = (close - low) / (high - low) * volume
Sell Volume: The portion of total volume where the price is moving downward, representing trades executed at the bid price.
Formula:
Sell Volume = (high - close) / (high - low) * volume
If the high and low prices are the same (flat bar), both buy and sell volumes are set to 0.
Why This Matters
This calculation assumes the close price’s position within the high-to-low range reflects the balance of buying and selling activity:
Close near the high: Most volume is buy volume.
Close near the low: Most volume is sell volume.
Close in the middle: Volume is split between buying and selling.
By breaking down volume in this way, the indicator helps traders identify key trends like accumulation (buying pressure) and distribution (selling pressure), making it a powerful tool for volume-based analysis.
UVR ChannelsUVR CHANNELS: A VOLATILITY-BASED TREND ANALYSIS TOOL
PURPOSE
UVR Channels are designed to dynamically measure market volatility and identify key price levels for potential trend reversals. The channels are calculated using a unique volatility formula(UVR) combined with an EMA as the central reference point. This approach provides traders with a tool for evaluating trends, reversals, and market conditions such as breakouts or consolidations.
CALCULATION MECHANISM
1. Ultimate Volatility Rate (UVR) Calculation:
The UVR is a custom measure of volatility that highlights significant price movements by comparing the extremes of current and previous candles.
Volatility Components:
Two values are calculated to represent potential price fluctuations:
The absolute difference between the current candle's high and the previous candle's low:
Volatility Component 1=∣high−low ∣
The absolute difference between the previous candle's high and the current candle's low:
Volatility Component 2=∣high −low∣
Volatility Ratio:
The larger of the two components is selected as the Volatility Ratio, ensuring the UVR captures the most significant movement:
Volatility Ratio=max(Volatility Component 1,Volatility Component 2)
Smoothing with SMMA:
To stabilize the volatility calculation, the Volatility Ratio is smoothed using a Smoothed Moving Average (SMMA) over a user-defined period (e.g., 14 candles):
UVR= (UVR(Previous) × (Period−1))+Volatility Ratio)/Period
2. Band Construction:
The UVR is integrated into the band calculations by using the Exponential Moving Average (EMA) as the central line:
Central Line (EMA):
The EMA is calculated based on closing prices over a user-defined period (e.g., 20 candles).
Upper Band:
The upper band represents a dynamic resistance level, calculated as:
Upper Band=EMA+(UVR × Multiplier)
Lower Band:
The lower band serves as a dynamic support level, calculated as:
Lower Band=EMA−(UVR × Multiplier)
3. Role of the Multiplier:
The Multiplier adjusts the width of the bands based on trader preferences:
Higher Multiplier: Wider bands to capture larger price swings.
Lower Multiplier: Narrower bands for tighter market analysis.
FEATURES AND USAGE
Dynamic Volatility Analysis:
The UVR Channels expand and contract based on real-time market volatility, offering a dynamic framework for identifying potential price trends.
Expanding Bands: High market volatility.
Contracting Bands: Low volatility or consolidation.
Trend Identification:
Price consistently near the upper band indicates a strong bullish trend.
Price near the lower band signals a bearish trend.
Trend Reversal Signals:
Price reaching the upper band may signal overbought conditions, while price touching the lower band may signal oversold conditions.
Breakout Potential:
Narrow bands often precede significant price breakouts, making UVR Channels a useful tool for spotting early breakout conditions.
DIFFERENCES FROM BOLLINGER BANDS
Unlike Bollinger Bands, which rely on standard deviation to measure volatility, the UVR Channels use a custom volatility formula based on price extremes (highs and lows). This approach adapts to market behaviour in a unique way, providing traders with an alternative and accurate view of volatility and trends.
INPUT PARAMETERS
Volatility Period:
Determines the number of periods used to smooth the volatility ratio. A higher value results in smoother bands but may lag behind sudden market changes.
EMA Period:
Controls the calculation of the central reference line.
Multiplier:
Adjusts the width of the bands. Increasing the multiplier widens the bands, capturing larger price movements, while decreasing it narrows the bands for tighter analysis.
VISUALIZATION
Purple Line: The EMA (central line).
Red Line: Upper band (dynamic resistance).
Green Line: Lower band (dynamic support).
Shaded Area: Fills the space between the upper and lower bands, visually highlighting the channel.
Support, Resistance & OHLCUPDATE:
This Pine Script code is an indicator for TradingView that displays support, resistance, and OHLC (Open, High, Low, Close) data across various timeframes. The code is divided into two main sections: Support/Resistance and OHLC Data.
Support and Resistance:
Logic for Support and Resistance: The indicator draws support and resistance lines after 4 consecutive candles without forming new lows (for support) or new highs (for resistance). This means that a support or resistance level is created after 4 candles that don't set new extremes.
Support: When the last 3 candles have lower lows, and the current candle forms a higher low, the support level is set.
Resistance: When the last 3 candles have higher highs, and the current candle forms a lower high, the resistance level is set.
Drawing the Lines and Labels:
Once the support or resistance level is determined, a horizontal line is drawn that extends left and right from the candle.
Additionally, labels for support and resistance are shown if the corresponding settings are enabled. These labels appear at a distance from the line and display the current support or resistance value.
Deleting the Lines:
If the price falls below the support level or rises above the resistance level, the respective line is deleted. This means that the market has breached the support or resistance level, making the line invalid.
When the support or resistance line is breached, alerts can be triggered to notify the trader.
Alerts:
The script provides options to set alerts when a support or resistance line is created or broken. These alerts notify the trader when the price reaches an important level.
OHLC Data:
The code allows the display of the high, low, close, and open values of the last candles across different timeframes (hourly, daily, weekly, monthly).
Settings:
Options are available to show these values for the respective timeframes.
The user can also adjust the size of the labels.
Visualization: The indicator plots lines for the high, low, and close values for each timeframe and places labels showing the respective values.
In summary, the indicator provides a detailed view of support and resistance levels, which are based on a 4-candle logic, and displays important OHLC values across different timeframes. The indicator also allows setting alerts for specific price levels, so traders can quickly react to market movements.
Key Prices & LevelsThis indicator is designed to visualize key price levels & areas for NY trading sessions based on the price action from previous day, pre-market activity and key areas from NY session itself. The purpose is to unify all key levels into a single indicator, while allowing a user to control which levels they want to visualize and how.
The indicator identifies the following:
Asia Range High/Lows, along with ability to visualize with a box
London Range High/Lows, along with ability to visualize with a box
Previous Day PM Session High/Lows
Current Day Lunch Session High/Lows, starts appearing after 12pm EST once the lunch session starts
New York Open (8:30am EST) price
9:53 Open (root candle) price
New York Midnight (12:00am EST) price
Previous Day High/Lows
First 1m FVG after NY Session Start (after 9:30am), with the ability to configure minimum FVG size.
Opening Range Gap, showing regular market hours close price (previous day 16:15pm EST close), new session open price (9:30am EST open) and optionally the mid-point between the two
Asia Range 50% along with 2, 2.5, 4 and 4.5 deviations of the Asia range in both directions
Configurability:
Each price level can be turned off
Styles in terms of line type, color
Ability to turn on/off labels for price levels and highlighting of prices on price scale
Ability to control label text for price levels
How is it different:
Identifies novel concepts such as 9:53 open, root candle that can be used as a bounce/resistance area during AM/PM sessions as well as confirmation of direction once closed over/under to indicate price's willingness to continue moving in the same direction.
It also shows 1st 1m FVG after New York Session open, that can be used to determine direction of the price action depending on PA's reaction to that area. While both 9:53 and 1m FVG are 1m based markers, these levels are visualized by the indicator on all timeframes from 15s to 1h.
Additionally the indicator is able to both highlight key prices in the price scale pane as well as combine labels to minimize clutter when multiple levels have the same price.
Lastly for in-session ranges such as Lunch High/Low the indicator updates the range in real-time as opposed to waiting for the lunch session to be over.
5-Minute YEN Pivot Bars 1.0The 5-Minute YEN Pivot Bars indicator is designed to identify and highlight low-range pivot bars on 5-minute charts, specifically tailored for Yen-based pairs (e.g., GBPJPY, USDJPY). By focusing on precise pip thresholds, this tool helps traders detect potential pivot points within specific trading sessions, while avoiding inside bars and other noise often seen in low-volatility conditions. This can be particularly useful for trend traders and those looking to refine their entry points based on intraday reversals.
Key Features:
- Customized Pip Thresholds for Yen Pairs:
The indicator is pre-configured for Yen pairs, where 1 pip is typically represented by 0.01. It applies these thresholds:
- Limited Range: 4 pips or less between open and close prices.
- High/Low Directionality: At least 3 pips from the close/open to the bar's high or low.
- Open/Close Proximity: 4 pips or less between open and close.
- Inside Bar Tolerance: A tolerance of 3 pips for inside bars, helping reduce false signals from bars contained within the previous bar's range.
- Session-Specific Alerts:
- The indicator allows you to enable alerts for the European Session (6:00-12:00), American Session (12:00-17:00), and London Close (17:00-20:00). You can adjust these times based on your own trading hours or timezone preferences via a time-shift setting.
- Receive real-time alerts when a valid bullish or bearish pivot bar is identified within the chosen sessions, allowing you to respond to potential trade opportunities immediately.
- Time Shift Customization:
- Adjust the "Time Shift" parameter to account for different time zones, ensuring accurate session alignment regardless of your local time.
How It Works:
1. Pivot Bar Identification:
The indicator scans for bars where the difference between the open and close is within the "Limited Range" threshold, and both open and close prices are close to either the high or the low of the bar.
2. Directional Filtering:
It requires the bar to show strong directional bias by enforcing an additional distance between the open/close levels and the opposite end of the bar (high/low). Only bars with this directional structure are considered for highlighting.
3. Exclusion of Inside Bars:
Bars that are completely contained within the range of the previous bar are excluded (inside bars), as are consecutive inside bars. This filtering is essential to avoid marking bars that typically indicate consolidation rather than potential pivot points.
4. Session Alerts:
When a valid pivot bar appears within the selected sessions, an alert is triggered, notifying the trader of a potential trading signal. Bullish and bearish signals are differentiated based on whether the close is near the high or low.
How to Use:
- Trend Reversals: Use this indicator to spot potential trend reversals or pullbacks on a 5-minute chart, especially within key trading sessions.
- Entry and Exit Points: Highlighted bars can serve as potential entry points for traders looking to capitalize on short-term directional changes or continuation patterns.
- Combine with Other Indicators: Consider pairing this tool with momentum indicators or trendlines to confirm the signals, providing a comprehensive analysis framework.
Default Parameters:
- Limited Range: 4 Pips
- High/Low Directionality: 3 Pips
- Open/Close Proximity: 4 Pips
- Inside Bar Tolerance: 3 Pips
- Session Alerts: Enabled for European, American, and London Close sessions
- Time Shift: Default 6 (adjustable to align with different time zones)
This indicator is specifically optimized for Yen pairs on 5-minute charts due to its pip calculation.
Formation Defined Moving Support and ResistanceThe script was originally coded in 2018 with Pine Script version 3, and it was in protected code status. It has been updated and optimised for Pine Script v5 and made completely open source.
The Formation Defined Moving Support and Resistance indicator is a sophisticated tool for identifying dynamic support and resistance levels based on specific price formations and level interactions. This indicator goes beyond traditional static support and resistance by updating levels based on predefined formation patterns and market behaviour, providing traders with a more responsive view of potential support and resistance zones.
Features:
The indicator detects essential price levels:
Lower Low (LL)
Higher Low (HL)
Higher High (HH)
Lower High (LH)
Equal Lower Low (ELL)
Equal Higher Low (EHL)
Equal Higher High (EHH)
Equal Lower High (ELH)
By identifying these key points, the script builds a foundation for tracking and responding to changes in price structure.
Pre-defined Formations and Comparisons:
The indicator calculates and recognises nine different pre-defined formations, such as bullish and bearish formations, based on the sequence of price levels.
These formations are compared against previous levels and formations, allowing for a sophisticated understanding of recent market movements and momentum shifts.
This formation-based approach provides insights into whether the price is likely to maintain, break, or reverse key levels.
Dynamic Support and Resistance Levels:
The indicator offers an option to toggle Moving Support and Resistance Levels.
When enabled, the support and resistance levels dynamically adjust:
Upon a change in the detected formation.
When the bar’s closing price breaks the last defined support or resistance level.
This feature ensures that the support and resistance levels adapt quickly to market changes, giving a more accurate and responsive perspective.
Customisable Price Source:
Users can choose the price source for level detection, selecting between close or high/low prices.
This flexibility allows the indicator to adapt to different trading styles, whether the focus is on closing prices for more conservative levels or on highs and lows for more sensitive level tracking.
This indicator can benefit traders relying on dynamic support and resistance rather than fixed, historical levels. It adapts to recent price actions and market formations, making it useful for identifying entry and exit points, trend continuation or reversal, and setting trailing stops based on updated support and resistance levels.
Trade Entry Detector, Wick to Body Ratio Trade Entry Detector: Wick-to-Body Ratio Strategy with Bollinger Bands
Overview
The Trade Entry Detector is a custom strategy for TradingView that leverages the Bollinger Bands and a unique wick-to-body ratio approach to capture precise entry opportunities. This indicator is designed for traders who want to pinpoint high-probability reversal points when price interacts with Bollinger Bands, all while offering flexible entry fill options.
The strategy performs primary analysis on the daily time frame, regardless of your current chart setting, allowing you to view daily Bollinger Band levels and entry signals even on lower time frames. This approach is suitable for swing traders and short-term traders looking to align intraday moves with higher time frame signals.
How the Strategy Works
1. Bollinger Band Analysis on the Daily Time Frame
Bollinger Bands are calculated using a 20-period simple moving average (SMA) and a standard deviation multiplier (default is 2). These bands dynamically expand and contract based on market volatility, making them ideal for identifying overbought and oversold conditions:
* Upper Band: Indicates potential overbought levels.
* Lower Band: Indicates potential oversold levels.
2. Wick-to-Body Ratio Condition
This strategy places significant emphasis on candle wicks relative to the candle body. Here’s why:
* A large upper wick relative to the body signals potential selling pressure after testing the upper Bollinger Band.
* A large lower wick relative to the body indicates buying support after testing the lower Bollinger Band.
* Ratio Threshold: You can set a minimum wick-to-body ratio (default is 1.0), meaning that the wick must be at least equal in size to the body. This ensures only candles with significant reversals are considered for entry.
3. Flexible Entry Timing
To adapt to various trading styles, the indicator allows you to choose the entry fill timing:
* Daily Close: Enter at the close of the daily candle.
* Daily Open: Enter at the open of the following daily candle.
* HOD (High of Day): Set entry at the daily high, for those who want confirmation of upward momentum.
* LOD (Low of Day): Set entry at the daily low, ideal for confirming downward movement.
4. Position Sizing and Risk Management
The strategy calculates position size based on a fixed risk percentage of your account balance (default is 1%). This approach dynamically adjusts position sizes based on stop-loss distance:
* Stop Loss: Placed at the nearest swing high (for shorts) or swing low (for longs).
* Take Profit: Exits are triggered when the price reaches the opposite Bollinger Band.
5. Order Expiration
Each pending order (long or short) expires after two days if unfilled, allowing for new setups on subsequent candles if conditions are met again.
Using the Trade Entry Detector
Step-by-Step Guide
1. Set the Primary Time Frame
The core calculations run on the daily time frame, but the strategy can be applied to intraday charts (e.g., 65-minute or 15-minute) for deeper insights.
2. Adjust Bollinger Band Settings
* Length: Default is 20, which determines the period for calculating the moving average.
* Standard Deviation Multiplier: Default is 2.0, which sets the width of the bands. Adjusting this can help you capture broader or tighter volatility ranges.
3. Define the Wick-to-Body Ratio
Set the minimum ratio between wick and body (default 1.0). Higher values filter out candles with less wick-to-body contrast, focusing on stronger rejection moves.
4. Choose Entry Fill Timing
Select your preferred fill condition:
* Daily Close: Confirms the trade at the end of the daily session.
* Daily Open: Executes the entry at the open of the next day.
* HOD/LOD: Uses the daily high or low as an additional confirmation for upward or downward moves.
5. Position Sizing and Risk Management
* Set your account balance and risk percentage. The strategy automatically calculates position sizes based on the stop distance to manage risk efficiently.
* Stop Loss and Take Profit points are automatically set based on swing highs/lows and opposing Bollinger Bands, respectively.
Practical Example
Let’s say SPY (S&P 500 ETF) tests the lower Bollinger Band on the daily time frame, with a lower wick that is twice the size of the body (meeting the 1.0 ratio threshold). Here’s how the strategy might proceed:
1. Signal: The lower wick on SPY suggests buying interest at the lower Bollinger Band.
2. Entry Fill Timing: If you’ve selected "Daily Open," the entry order will be placed at the next day's open price.
3. Stop Loss: Positioned at the nearest daily swing low to minimize risk.
4. Take Profit: If SPY price moves up and reaches the upper Bollinger Band, the position is automatically closed.
Indicator Features and Benefits
* Multi-Time Frame Compatibility: Perform daily analysis while tracking signals on any intraday chart.
* Automatic Position Sizing: Tailor risk per trade based on account balance and desired risk percentage.
* Flexible Entry Options: Choose from close, open, HOD, or LOD for optimal timing.
* Effective Trend Reversal Identification: Uses wick-to-body ratio and Bollinger Band interaction to pinpoint potential reversals.
* Dynamic Visualization: Bollinger Bands are displayed on your chosen time frame, allowing seamless intraday tracking.
Summary
The Trade Entry Detector provides a unique, data-driven way to spot reversal points with customizable entry options. By combining Bollinger Bands with wick-to-body ratio conditions, it identifies potential trade setups where price has tested extremes and shown reversal signals. With its flexible entry timing, risk management features, and multi-time frame compatibility, this indicator is ideal for traders looking to blend daily market context with shorter-term execution.
Tips for Usage:
* For swing trading, consider the Daily Open or Close entry options.
* For momentum entries, HOD or LOD may offer better alignment with the direction of the wick.
* Backtest on different assets to find optimal Bollinger Band and wick-to-body settings for your market.
Use this indicator to enhance your understanding of price behavior at key levels and improve the precision of your entry points. Happy trading!
Higher Time Frame Strat [QuantVue]The Higher Time Frame Strat Indicator is a tool that helps traders visualize and analyze price action from a higher timeframe (HTF) on their current chart. It applies the Strat method, a trading strategy focused on identifying key price action setups by observing how current price bars relate to previous ones. This helps in understanding the market's structure and determining potential trading opportunities based on higher timeframe data.
Key Concepts:
Strat Basics:
Type 1 Bar (Inside Bar): The current bar's high is lower than the previous bar's high, and its low is higher than the previous bar's low. This signifies a consolidation, or indecision, as the price is contained within the previous bar's range.
Type 2 Bar (Directional Bar): The current bar either breaks above the previous bar's high (bullish) or stays above the previous bar's low (bearish), indicating a continuation in the price direction.
Type 3 Bar (Outside Bar): The current bar breaks both above the previous bar's high and below the previous bar's low, showing volatility and a potential reversal.
Higher Timeframe Visualization:
The indicator uses a user-defined higher timeframe (default: 1 hour) and plots the last three higher timeframe candles on the current chart.
Strat Classification:
When a new higher timeframe candle forms, the indicator draws a semi-transparent box around the candle's range (high to low), along with the Strat type label. This provides a visual cue to the trader about the structure of the newly formed candle and how it fits into the overall market movement.
The script classifies each higher timeframe candle as one of the Strat types (1, 2, or 3). Based on the relationship between the current candle and the previous candle's high/low, it assigns a label ("1", "2", or "3"), helping traders quickly identify the price action setup on the higher timeframe.
How to Use the Indicator:
Trend Continuation: Look for Type 2 bars, which indicate a continuation in the current trend. For example, a Type 2 up suggests the price is breaking above the previous high, potentially signaling further upward movement.
Reversals: Type 3 bars show increased volatility, where the price breaks both above and below the previous bar's range. This could indicate a reversal, so be prepared for a potential change in direction.
Consolidation: Inside bars (Type 1) signify a tightening range and can signal the beginning of a breakout once the price moves outside of the previous bar's high or low.
By combining these price action concepts with the visualization of higher timeframe data, traders can potentially get earlier entry and exits as a higher timeframe set up forms.
Important Levels by Sandun Kolambage
### Pine Script Indicator: Important Levels by Sandun Kolambage
#### Description
Introducing our new pivot point and high/low indicator for TradingView! This indicator is designed to help traders identify key levels of support and resistance across different timeframes, from daily to yearly. By analyzing historical data and market trends, our indicator displays the most important pivot points and high/low levels, giving you a better understanding of market dynamics and potential trading opportunities.
Whether you're a day trader, swing trader, or long-term investor, our indicator can help you optimize your trading strategy and achieve your financial goals. Install our indicator on TradingView today and start taking advantage of these important levels!
#### Key Features
- **Daily, Weekly, Monthly, and Yearly Levels:** Automatically plots the open, high, low, and close prices for different timeframes to help traders identify significant levels.
- **Pivot Points:** Calculates and displays pivot points for weekly, monthly, and yearly timeframes, providing additional support and resistance levels.
- **Customizable Line Styles:** Offers options to customize the appearance of the lines (solid, dashed, or dotted) for better visualization.
- **Conditional Coloring:** Uses color coding to highlight the relationship between different timeframe closes, making it easy to spot important levels.
#### How It Works
1. **Daily, Weekly, Monthly, and Yearly Levels:**
- The indicator uses `request.security` to fetch and display open, high, low, and close prices for daily, weekly, monthly, and yearly timeframes.
- Lines are plotted at these key levels with colors indicating their relationship to closes of other timeframes.
2. **Pivot Points:**
- Pivot points are calculated using the formula \((High + Low + Close) / 3\).
- These pivot points are plotted on the chart and labeled clearly to indicate potential support and resistance areas.
3. **Customizable Line Styles:**
- Users can select from solid, dashed, or dotted lines to represent the key levels and pivot points for better clarity and personal preference.
4. **Conditional Coloring:**
- The indicator applies conditional coloring to the lines based on the comparison of current close prices across different timeframes. Yellow indicates lower closes, and red indicates higher closes, making it easy to identify important price levels quickly.
#### Usage Instructions
1. **Enable Key Levels:**
- Toggle the "Daily Weekly Monthly High/Low" option to display or hide the respective levels.
- Select your preferred line style (solid, dashed, dotted) for better visibility.
2. **Display Pivot Points:**
- Toggle the "Pivot" option to show or hide the weekly, monthly, and yearly pivot points on the chart.
3. **Interpret Color Coding:**
- Yellow lines indicate levels where the close price is lower compared to a specific timeframe close.
- Red lines indicate levels where the close price is higher compared to a specific timeframe close.
- Specific colors for yearly levels and pivots are used to distinguish them clearly on the chart.
By following these guidelines, traders can effectively use this indicator to identify critical price levels and make informed trading decisions.
Volume Pairwise Highlight### Volume Pairwise Highlight
**Overview:**
The "Volume Pairwise Highlight" Pine Script is designed to analyze and visualize the relationship between the volumes of consecutive candlesticks in a trading chart. This script calculates the high-low difference of each candlestick and plots it, while also highlighting specific conditions in the volume histogram.
**Key Features:**
1. **High-Low Difference Calculation:**
- The script calculates the difference between the high and low prices of each candlestick.
- This difference is plotted as a histogram on the main chart for easy visualization.
2. **Volume Condition Highlight:**
- The script checks if the volume of the previous candlestick is higher than the volume of the current candlestick.
- If this condition is met, the current volume bar is highlighted in red; otherwise, it is colored green.
- This helps traders quickly identify periods where there was a drop in volume compared to the previous period.
3. **Volume Display:**
- The volume is plotted as a histogram on a separate pane, making it easy to compare volumes across different periods.
- The coloring of the volume bars provides a quick visual cue for significant changes in trading volume.
4. **Information Display:**
- The script dynamically updates and displays the volume and high-low difference values on the chart.
- This provides traders with immediate feedback on the current trading activity.
5. **Optional Moving Average:**
- The script includes an optional moving average of the high-low difference.
- This moving average can be customized in length and helps smooth out the data for better trend analysis.
**Customization:**
- **Volume Threshold:** Customize the volume threshold to highlight specific volume conditions.
- **Highlight Color:** Adjust the highlight colors to suit your visual preferences.
- **Moving Average Length:** Modify the length of the moving average to better fit your analysis needs.
**Usage:**
This script is useful for traders looking to:
- Identify significant changes in trading volume.
- Analyze the volatility of candlesticks through high-low differences.
- Quickly spot periods of declining volume, which could indicate potential changes in market trends.
By providing clear visual cues and detailed volume analysis, the "Volume Pairwise Highlight" script aids traders in making more informed trading decisions.
[Pandora] Vast Volatility Treasure TroveINTRODUCTION:
Volatility enthusiasts, prepare for VICTORY on this day of July 4th, 2024! This is my "Vast Volatility Treasure Trove," intended mostly for educational purposes, yet these functions will also exhibit versatility when combined with other algorithms to garner statistical excellence. Once again, I am now ripping the lid off of Pandora's box... of volatility. Inside this script is a 'vast' collection of volatility estimators, reflecting the indicators name. Whether you are a seasoned trader destined to navigate financial strife or an eagerly curious learner, this script offers a comprehensive toolkit for a broad spectrum of volatility analysis. Enjoy your journey through the realm of market volatility with this code!
WHAT IS MARKET VOLATILITY?:
Market volatility refers to various fluctuations in the value of a financial market or asset over a period of time, often characterized by occasional rapid and significant deviations in price. During periods of greater market volatility, evolving conditions of prices can move rapidly in either direction, creating uncertainty for investors with results of sharp declines as well as rapid gains. However, market volatility is a typical aspect expected in financial markets that can also present opportunities for informed decision-making and potential benefits from the price flux.
SCRIPT INTENTION:
Volatility is assuredly omnipresent, waxing and waning in magnitude, and some readers have every intention of studying and/or measuring it. This script serves as an all-in-one armada of volatility estimators for TradingView members. I set out to provide a diverse set of tools to analyze and interpret market volatility, offering volatile insights, and aid with the development of robust trading indicators and strategies.
In today's fast-paced financial markets, understanding and quantifying volatility is informative for both seasoned traders and novice investors. This script is designed to empower users by equipping them with a comprehensive suite of volatility estimators. Each function within this script has been meticulously crafted to address various aspects of volatility, from traditional methods like Garman-Klass and Parkinson to more advanced techniques like Yang-Zhang and my custom experimental algorithms.
Ultimately, this script is more than just a collection of functions. It is a gateway to a deeper understanding of market volatility and a valuable resource for anyone committed to mastering the complexities of financial markets.
SCRIPT CONTENTS:
This script includes a variety of functions designed to measure and analyze market volatility. Where applicable, an input checkbox option provides an unbiased/biased estimate. Below is a brief description of each function in the original order they appear as code upon first publish:
Parkinson Volatility - Estimates volatility emphasizing the high and low range movements.
Alternate Parkinson Volatility - Simpler version of the original Parkinson Volatility that I realized.
Garman-Klass Volatility - Estimates volatility based on high, low, open, and close prices using a formula that adjusts for biases in price dynamics.
Rogers-Satchell-Yoon Volatility #1 - Estimates volatility based on logarithmic differences between high, low, open, and close values.
Rogers-Satchell-Yoon Volatility #2 - Similar estimate to Rogers-Satchell with the same result via an alternate formulation of volatility.
Yang-Zhang Volatility - An advanced volatility estimate combining both strengths of the Garman-Klass and Rogers-Satchell estimators, with weights determined by an alpha parameter.
Yang-Zhang (Modified) Volatility - My experimental modification slightly different from the Yang-Zhang formula with improved computational efficiency.
Selectable Volatility - Basic customizable volatility calculation based on the logarithmic difference between selected numerator and denominator prices (e.g., open, high, low, close).
Close-to-Close Volatility - Estimates volatility using the logarithmic difference between consecutive closing prices. Specifically applicable to data sources without open, high, and low prices.
Open-to-Close Volatility - (Overnight Volatility): Estimates volatility based on the logarithmic difference between the opening price and the last closing price emphasizing overnight gaps.
Hilo Volatility - Estimates volatility using a method similar to Parkinson's method, which considers the logarithm of the high and low prices.
Vantage Volatility - My experimental custom 'vantage' method to estimate volatility similar to Yang-Zhang, which incorporates various factors (Alpha, Beta, Gamma) to generate a weighted logarithmic calculation. This may be a volatility advantage or disadvantage, hence it's name.
Schwert Volatility - Estimates volatility based on arithmetic returns.
Historical Volatility - Estimates volatility considering logarithmic returns.
Annualized Historical Volatility - Estimates annualized volatility using logarithmic returns, adjusted for the number of trading days in a year.
If I omitted any other known varieties, detailed requests for future consideration can be made below for their inclusion into this script within future versions...
BONUS ALGORITHMS:
This script also includes several experimental and bonus functions that push the boundaries of volatility analysis as I understand it. These functions are designed to provide additional insights and also are my ideal notions for traders looking to explore other methods of volatility measurement.
VOLATILITY APPLICATIONS:
Volatility estimators serve a common role across various facets of trading and financial analysis, offering insights into market behavior. These tools are already in instrumental with enhancing risk management practices by providing a deeper understanding of market dynamics and the inherent uncertainty in asset prices. With volatility estimators, traders can effectively quantifying market risk and adjust their strategies accordingly, optimizing portfolio performance and mitigating potential losses. Additionally, volatility estimations may serve as indication for detecting overbought or oversold market conditions, offering probabilistic insights that could inform strategic decisions at turning points. This script
distinctly offers a variety of volatility estimators to navigate intricate financial terrains with informed judgment to address challenges of strategic planning.
CODE REUSE:
You don't have to ask for my permission to use/reuse these functions in your published scripts, simply because I have better things to do than answer requests for the reuse of these functions.
Notice: Unfortunately, I will not provide any integration support into member's projects at all. I have my own projects that require way too much of my day already.
Adjusted Directional Movement @shrilssThis indicator combines elements of the Average True Range (ATR) and the Directional Movement Index (DMI) to create adjusted directional lines.
The core of this indicator lies in its calculation of the Adjusted Directional Movement (ADM), which provides a refined measure of price movement. Unlike traditional ATR calculations, which solely rely on the high-low range of each period, the ADM considers additional factors such as the current close relative to the previous close. This adjustment helps to capture more accurately the true extent of price movement.
To calculate the ADM, the script first computes the True Range (TR), which represents the maximum of three values: the current high minus low, the absolute value of the current high minus the previous close, and the absolute value of the current low minus the previous close. This TR value serves as the basis for determining price movement.
Next, the script calculates the Adjusted Directional Movement (ADM) by comparing the current high-low range with the range from the previous period. Positive ADM (Plus ADM) is computed as the maximum of the current high minus the previous high or zero, while negative ADM (Minus ADM) is calculated as the maximum of the previous low minus the current low or zero.
Once the Plus ADM and Minus ADM values are obtained, they are normalized by dividing them by the True Range. This normalization process ensures that the directional lines accurately reflect the proportion of price movement relative to the overall range.
Finally, the script smoothes out these directional lines over a specified length using a simple moving average calculation. The resulting Plus Directional Line (+DI) and Minus Directional Line (-DI) provide insights into the strength and direction of price movement.
Visually, the script plots the +DI and -DI lines on the chart, with a shaded region indicating which line is dominant at any given time. This shading helps traders quickly assess the prevailing trend direction.
Equal Highs & Lows [UAlgo]
🔶 Description:
The "Equal Highs/Lows " indicator is designed to identify equal highs and lows within price action. These levels are significant as they often indicate potential reversal points or areas of consolidation in the market. The indicator is based on specific settings and utilizes the concept of Average True Range (ATR) to determine thresholds for identifying these key price levels.
The indicator plots lines and labels to mark equal highs and lows on the price chart.
It dynamically adjusts to changes in market volatility by utilizing ATR-based thresholds.
🔶 Settings:
Pivot Length: Determines the number of bars used to identify pivot highs and lows.
ATR Length to calculate threshold: Specifies the length of the ATR used to calculate the threshold for determining equal highs and lows.
Threshold: Sets the percentage threshold used in conjunction with ATR to identify equal highs and lows.
Wait For Confirmation: When enabled, the indicator waits for confirmation by considering pivots beyond (considers right length bars while calcuation pivot points) the specified length.
While "Wait For Confirmation" is enabled, EQH / EQL Lines will appear after "Pivot Length" after for confirmation
While "Wait For Confirmation" is disabled, EQH / EQL Lines will appear immediately if it meets the requirements to create EQH or EQL as soon as the candle closes.
🔶 Disclaimer:
"Equal Highs/Lows " is provided for informational and educational purposes only. Trading involves risks, and users should exercise caution and perform their own analysis before making any trading decisions based on this indicator. The creator of the indicator, UAlgo, does not guarantee the accuracy or reliability of the indicator, and usage of this indicator is at the user's own risk.
Live Economic Calendar by toodegrees⚠️ PLEASE READ ⚠️
Although this indicator is accurate in showcasing live and upcoming News Events, checking the original sources is always suggested. This indicator aims to save Time, but due to limitations it may not be 100% correct 100% of the Time.
Description:
The Live Economic Calendar indicator seamlessly integrates with external news sources to provide real-Time, upcoming, and past financial news directly on your Tradingview chart.
By having a clear understanding of when news are planned to be released, as well as their respective impact, analysts can prepare their weeks and days in advance. These injections of volatility can be harnessed by analysts to support their thesis, or may want to be avoided to ensure higher probability market conditions. Fundamentals and news releases transcend the boundaries of technical analysis, as their effects are difficult to predict or estimate.
Designed for both novice and experienced traders, the Live Economic Calendar indicator enhances your analysis by keeping you informed of the latest and upcoming market-moving news.
This is achieved with three different visual components:
News Table: A dedicated News Table shows the Day of the Week, Date, Time of the Day, Currency, Expected Impact, and News Name for each event (in chronological order). Once a news event has occurred, or the day is over, it will be greyed out – helping to focus on the next upcoming news events.
News Lines: Vertical lines plotted in the future help analysts monitor upcoming news events; vertical lines in the past help analysts spot and backtest previous news events that already occurred.
News Labels: Color-coded news labels will plot once the news events have occurred. This not only gives analysts a minimalistic visual cue, but also retains the information of which news were released at that Time in their tooltips.
Forex Factory Calendar News Feed:
The Forex Factory Data Feed includes news events from January 2007 to the present. The data is updated daily. Please see the Technical Description below for more information.
Forex Factory provides news for all major currencies and markets:
Australia (AUD)
Canada (CAD)
Switzerland (CHF)
China (CNY)
European Union (EUR)
United Kingdom (GBP)
Japan (JPY)
New Zealand (NZD)
United States of America (USD)
Further, there are four types of news impact, defined by respective color-coding which is retained to avoid confusion:
⚪ Holiday
🟡 Low Impact
🟠 Medium Impact
🔴 High Impact
News' Time of the day data is in 24H format, and 'All Day' news are marked at Daily candle open.
⚠️ Original Release Notes ⚠️
The original release of this indicator supports the Forex Factory News Calendar in EST (New York Time). Future updates will include multiple news sources, as well as supporting different Timezones.
Given Data limitations, the Daily chart can omit some data due to the market being close on some days. This will be fixed in the future once an efficient solution is implemented.
Key Features:
Impact-Based News Filtering: Filter news items based on their expected impact (holiday, low, medium, high) to focus on the most market-critical information.
Symbol-Specific News: Automatically filter news to display only what's relevant to the currency pair or trading symbol you are analyzing.
Custom Currency News: Want to see more than the news relevant to the current symbol? Toggle which markets' news you are most interested in.
Chart History: Keep your charts clean by displaying only the drawings of Today's news, or This Week's news.
Custom Lookback: Look further back in Time by choosing a custom number of Lookback Days, allowing you to backtest and keep in mind salient news events from the past.
Line and Label Customization: Both the News Lines and Labels are highly customizable (except the colors), allowing you to make the indicator yours.
Table History: Choose whether to focus on Today's news only, or the news for This Week.
Table Customization: The table colors and position are highly customizable, allowing you to make it fit your visual preference and your layouts' aesthetic.
"Wondering how it's done? 👇"
Technical Description:
This script utilizes Pine Seeds , a service integrated with TradingView for importing custom data. This stunning feature enables users to upload and access custom End Of Day (EOD) data, which can be updated as frequently as five times daily.
This data can be imported in one of two formats:
Single Value: integer or float
Candle Data: open, high, low, close, volume
Upon encountering Pine Seeds, I recognized its potential for importing financial news events. Given that Forex Factory is a primary source of financial news in my personal analysis, integrating it into my layouts seemed like an exciting opportunity. This integration is expected to provide significant value to users looking to integrate additional news feeds all in one place.
Development Challenges:
Format Limitations: News events must be converted into numerical values for import, due to the required Pine Seeds format.
Amount of Data: With all currencies considered, the system may encounter over 40 news events in a single day.
Data Availability: The reliance on End Of Day (EOD) data means that information for the current day is displayed with a delay, and accessing future data is not possible.
Solutions:
Encoding: Each news event is encoded as an integer in the "DCHHMMITYP" format.
D = day of the week
C = currency
HHMM = Time of day
I = news impact
TYP = event ID (see Event Library A and Event Library B )
To ensure data assignment for each candle across the open, high, low, close, and volume series, the value "999" is used as a placeholder:
Importing: Utilizing the encoding system, up to five news events per day can be imported for a singular Pine Seeds custom symbol.
By creating multiple custom Pine Seeds Symbols, efficient imports of a larger number of events is then easily achievable. Nine unique symbols have been established, accommodating up to 45 news events per day.
These symbols are searchable, and accessible as " TOODEGREES_FOREX_FACTORY_SLOT_N " where N ranges from 1 to 9.
The Pine Seeds data feed appears as follows:
Uploading Schedule: To ensure analysts are informed about current and upcoming week's news, events are uploaded one week in advance.
This approach is vital for preparing for potential market impacts across various asset classes and currencies, allowing visibility of an entire week's news ahead of Time.
Data Scraping:
Unfortunately Forex Factory doesn't offer an API to fetch their news feed.
Hence an ad hoc python scraper was developed to read and save news events from January 2007 till the present leveraging Selenium. The scraper algorithm is part of a larger script responsible for scraping data, formatting data, and creating all necessary datasets.
The pseudo-code for the python script is as follows:
Read and save news event data on Forex Factory
Format day of the week, currency, Time of the day, and impact data for the Encoding
Encode and save News Event IDs – Event ID dataset is created
Format news data for Pine Seeds (roll-back date by one week, assign news to open, high, low, close, and volume values)
Create Pine Seeds Datasets
This script is ran everyday at Futures market close (16:00 EST) to update the last part of the each dataset, ensuring accuracy, and taking into account last-minute news additions or revisions.
Once the data (next week's news) is imported by the Live Economic Calendar indicator, it's immediately decoded by leveraging the Forex Factory Decoding Library , and saved into an array.
Upon a new week open, the decoded data is used to plot news events on the chart and in the news table.
See the inner workings of these processes in the Forex Factory Utility Library .
Although these libraries are specifically built for this indicator, feel free to use them to create your own scripts. Looking forward to see what the Pine Script community comes up with!
Thank you for making it this far. Enjoy!
Ciao,
toodegrees
This tool is available ONLY on the TradingView platform.
Terms and Conditions
Our charting tools are provided for informational and educational purposes only and do not constitute financial, investment, or trading advice. Our charting tools are not designed to predict market movements or provide specific recommendations. Users should be aware that past performance is not indicative of future results and should not be relied upon for making financial decisions. By using our charting tools, the user agrees that Toodegrees and the Toodegrees Team are not responsible for any decisions made based on the information provided by these charting tools. The user assumes full responsibility and liability for any actions taken and the consequences thereof, including any loss of money or investments that may occur as a result of using these products. Hence, by using these charting tools, the user accepts and acknowledges that Toodegrees and the Toodegrees Team are not liable nor responsible for any unwanted outcome that arises from the development, or the use of these charting tools. Finally, the user indemnifies Toodegrees and the Toodegrees Team from any and all liability.
By continuing to use these charting tools, the user acknowledges and agrees to the Terms and Conditions outlined in this legal disclaimer.
ZigzagLibrary "Zigzag"
Zigzag related user defined types. Depends on DrawingTypes library for basic types
method tostring(this, sortKeys, sortOrder, includeKeys)
Converts ZigzagTypes/Pivot object to string representation
Namespace types: Pivot
Parameters:
this (Pivot) : ZigzagTypes/Pivot
sortKeys (bool) : If set to true, string output is sorted by keys.
sortOrder (int) : Applicable only if sortKeys is set to true. Positive number will sort them in ascending order whreas negative numer will sort them in descending order. Passing 0 will not sort the keys
includeKeys (string ) : Array of string containing selective keys. Optional parmaeter. If not provided, all the keys are considered
Returns: string representation of ZigzagTypes/Pivot
method tostring(this, sortKeys, sortOrder, includeKeys)
Converts Array of Pivot objects to string representation
Namespace types: Pivot
Parameters:
this (Pivot ) : Pivot object array
sortKeys (bool) : If set to true, string output is sorted by keys.
sortOrder (int) : Applicable only if sortKeys is set to true. Positive number will sort them in ascending order whreas negative numer will sort them in descending order. Passing 0 will not sort the keys
includeKeys (string ) : Array of string containing selective keys. Optional parmaeter. If not provided, all the keys are considered
Returns: string representation of Pivot object array
method tostring(this)
Converts ZigzagFlags object to string representation
Namespace types: ZigzagFlags
Parameters:
this (ZigzagFlags) : ZigzagFlags object
Returns: string representation of ZigzagFlags
method tostring(this, sortKeys, sortOrder, includeKeys)
Converts ZigzagTypes/Zigzag object to string representation
Namespace types: Zigzag
Parameters:
this (Zigzag) : ZigzagTypes/Zigzagobject
sortKeys (bool) : If set to true, string output is sorted by keys.
sortOrder (int) : Applicable only if sortKeys is set to true. Positive number will sort them in ascending order whreas negative numer will sort them in descending order. Passing 0 will not sort the keys
includeKeys (string ) : Array of string containing selective keys. Optional parmaeter. If not provided, all the keys are considered
Returns: string representation of ZigzagTypes/Zigzag
method calculate(this, ohlc, indicators, indicatorNames)
Calculate zigzag based on input values and indicator values
Namespace types: Zigzag
Parameters:
this (Zigzag) : Zigzag object
ohlc (float ) : Array containing OHLC values. Can also have custom values for which zigzag to be calculated
indicators (matrix) : Array of indicator values
indicatorNames (string ) : Array of indicator names for which values are present. Size of indicators array should be equal to that of indicatorNames
Returns: current Zigzag object
method calculate(this)
Calculate zigzag based on properties embedded within Zigzag object
Namespace types: Zigzag
Parameters:
this (Zigzag) : Zigzag object
Returns: current Zigzag object
method nextlevel(this)
Calculate Next Level Zigzag based on the current calculated zigzag object
Namespace types: Zigzag
Parameters:
this (Zigzag) : Zigzag object
Returns: Next Level Zigzag object
method clear(this)
Clears zigzag drawings array
Namespace types: ZigzagDrawing
Parameters:
this (ZigzagDrawing ) : array
Returns: void
method drawplain(this)
draws fresh zigzag based on properties embedded in ZigzagDrawing object without trying to calculate
Namespace types: ZigzagDrawing
Parameters:
this (ZigzagDrawing) : ZigzagDrawing object
Returns: ZigzagDrawing object
method drawfresh(this, ohlc, indicators, indicatorNames)
draws fresh zigzag based on properties embedded in ZigzagDrawing object
Namespace types: ZigzagDrawing
Parameters:
this (ZigzagDrawing) : ZigzagDrawing object
ohlc (float ) : values on which the zigzag needs to be calculated and drawn. If not set will use regular OHLC
indicators (matrix) : Array of indicator values
indicatorNames (string ) : Array of indicator names for which values are present. Size of indicators array should be equal to that of indicatorNames
Returns: ZigzagDrawing object
method drawcontinuous(this, ohlc, indicators, indicatorNames)
draws zigzag based on the zigzagmatrix input
Namespace types: ZigzagDrawing
Parameters:
this (ZigzagDrawing) : ZigzagDrawing object
ohlc (float ) : values on which the zigzag needs to be calculated and drawn. If not set will use regular OHLC
indicators (matrix) : Array of indicator values
indicatorNames (string ) : Array of indicator names for which values are present. Size of indicators array should be equal to that of indicatorNames
Returns:
method getPrices(pivots)
Namespace types: Pivot
Parameters:
pivots (Pivot )
method getBars(pivots)
Namespace types: Pivot
Parameters:
pivots (Pivot )
Indicator
Indicator is collection of indicator values applied on high, low and close
Fields:
indicatorHigh (series float) : Indicator Value applied on High
indicatorLow (series float) : Indicator Value applied on Low
PivotCandle
PivotCandle represents data of the candle which forms either pivot High or pivot low or both
Fields:
_high (series float) : High price of candle forming the pivot
_low (series float) : Low price of candle forming the pivot
length (series int) : Pivot length
pHighBar (series int) : represents number of bar back the pivot High occurred.
pLowBar (series int) : represents number of bar back the pivot Low occurred.
pHigh (series float) : Pivot High Price
pLow (series float) : Pivot Low Price
indicators (Indicator ) : Array of Indicators - allows to add multiple
Pivot
Pivot refers to zigzag pivot. Each pivot can contain various data
Fields:
point (chart.point) : pivot point coordinates
dir (series int) : direction of the pivot. Valid values are 1, -1, 2, -2
level (series int) : is used for multi level zigzags. For single level, it will always be 0
componentIndex (series int) : is the lower level zigzag array index for given pivot. Used only in multi level Zigzag Pivots
subComponents (series int) : is the number of sub waves per each zigzag wave. Only applicable for multi level zigzags
microComponents (series int) : is the number of base zigzag components in a zigzag wave
ratio (series float) : Price Ratio based on previous two pivots
sizeRatio (series float)
subPivots (Pivot )
indicatorNames (string ) : Names of the indicators applied on zigzag
indicatorValues (float ) : Values of the indicators applied on zigzag
indicatorRatios (float ) : Ratios of the indicators applied on zigzag based on previous 2 pivots
ZigzagFlags
Flags required for drawing zigzag. Only used internally in zigzag calculation. Should not set the values explicitly
Fields:
newPivot (series bool) : true if the calculation resulted in new pivot
doublePivot (series bool) : true if the calculation resulted in two pivots on same bar
updateLastPivot (series bool) : true if new pivot calculated replaces the old one.
Zigzag
Zigzag object which contains whole zigzag calculation parameters and pivots
Fields:
length (series int) : Zigzag length. Default value is 5
numberOfPivots (series int) : max number of pivots to hold in the calculation. Default value is 20
offset (series int) : Bar offset to be considered for calculation of zigzag. Default is 0 - which means calculation is done based on the latest bar.
level (series int) : Zigzag calculation level - used in multi level recursive zigzags
zigzagPivots (Pivot ) : array which holds the last n pivots calculated.
flags (ZigzagFlags) : ZigzagFlags object which is required for continuous drawing of zigzag lines.
ZigzagObject
Zigzag Drawing Object
Fields:
zigzagLine (series line) : Line joining two pivots
zigzagLabel (series label) : Label which can be used for drawing the values, ratios, directions etc.
ZigzagProperties
Object which holds properties of zigzag drawing. To be used along with ZigzagDrawing
Fields:
lineColor (series color) : Zigzag line color. Default is color.blue
lineWidth (series int) : Zigzag line width. Default is 1
lineStyle (series string) : Zigzag line style. Default is line.style_solid.
showLabel (series bool) : If set, the drawing will show labels on each pivot. Default is false
textColor (series color) : Text color of the labels. Only applicable if showLabel is set to true.
maxObjects (series int) : Max number of zigzag lines to display. Default is 300
xloc (series string) : Time/Bar reference to be used for zigzag drawing. Default is Time - xloc.bar_time.
ZigzagDrawing
Object which holds complete zigzag drawing objects and properties.
Fields:
zigzag (Zigzag) : Zigzag object which holds the calculations.
properties (ZigzagProperties) : ZigzagProperties object which is used for setting the display styles of zigzag
drawings (ZigzagObject ) : array which contains lines and labels of zigzag drawing.
BreakoutTrendFollowingINFO:
The "BreakoutTrendFollowing" indicator is a comprehensive trading system designed for trend-following in various market environments. It combines multiple technical indicators, including Moving Averages (MA), MACD, and RSI,
along with volume analysis and breakout detection from consolidation, to identify potential entry points in trending markets. This strategy is particularly effective for assets that exhibit strong trends and significant price movements.
Note that using the consolidation filter reduces the amount of entries the strategy detects significantly, and needs to be used if we want to have an increased confidence in the trend via breakout.
However, the strategy can be easily transformed to various only trend-following strategies, by applying different filters and configurations.
The indicator can be used to connect to the Signal input of the TTS (TempalteTradingStrategy) by jason5480 in order to backtest it, thus effectively turning it into a strategy (instructions below in TTS CONNECTIVITY section)
DETAILS:
The strategy's core is built upon several key components:
Moving Average (MA): Used to determine the general trend direction. The strategy checks if the price is above the selected MA type and length.
MACD Filter: Analyzes the relationship between two moving averages to confirm the trend's momentum.
Consolidation Detection: Identifies periods of price consolidation and triggers trades on breakouts from these ranges.
Volume Analysis: Assesses trading volume to confirm the strength and validity of the breakout.
RSI: Used to avoid overbought conditions, ensuring trades are entered in favorable market situations.
Wick filters: make sure there is not a long wick that indicates selling pressure from above
The strategy generates buy signals when several conditions are met concurrently (each one of them can be individually enabled/disabled)"
The price is above the selected MA.
A breakout occurs from a configurable consolidation range.
The MACD line is above the signal line, indicating bullish momentum.
The RSI is below the overbought threshold.
There's an increase in trading volume, confirming the breakout's strength.
Currently the strategy fires SL signals, as the approach is to check for loss of momentum - i.e. crossunder of the MACD line and signal line, but that is to everyone to determine the exit conditions.
The buy and SL signals are set on the chart using green or orange triangles on the below/above the price action.
SETTINGS:
Users can customize various parameters, including MA type and period, MACD settings, consolidation length, and volume increase percentage. The strategy is equipped with alert conditions for both entry (buy signals) and exit (set stop loss) points, facilitating both manual and automated trading.
Each one of the technical indicators, as well as the consilidation range and breakout/wick settings can be configured and enabled/disabled individually.
Please thoroughly review the available settings of the script, but here is an outline of the most important ones:
Use bar wicks (instead of open/close) - the ref_high/low will be taken based on the bar wicks, rather than the open/close when determining the breakout and MA
Enter position only on green candles - additional filters to make sure that we enter only on strong momentum
MA Filter: (enable, source, type, length) - general settings for MA filter to be checked against the stock price (close or upper wick)
MACD Filter: (enable, source, Osc MA type, Signal MA type, Fast MA length, Slow MA length, Low MACD Hist) - detailed settings for fine MACD tuning
Consolidation:
Consolidation Type: we have two different ways of detecting the consolidation, note the types below.
CONSOLIDATION_BASIC - consolidation areas by looking for the pivot point of a trend and counts the number of bars that have not broken the consolidation high/low levels.
CONSOLIDATIO_RANGE_PERCENT - identifies consolidation by comparing the range between the highest and lowest price points over a specified period.
So in summary the CONSOLIDATIO_RANGE_PERCENT uses a percentage-based range to define consolidation, while CONSOLIDATION_BASIC uses a count of bars within a high-low range to establish consolidation.
Thus the former is more focused on the tightness of the price range, whereas the latter emphasizes the duration of the consolidation phase.
The CONSOLIDATIO_RANGE_PERCENT might be more sensitive to recent price movements and suitable for shorter-term analysis, while CONSOLIDATION_BASIC could be better for identifying longer-term consolidation patterns.
Min consolidation length - applicable for CONSOLIDATION_BASIC case, the min number of bars for the price to be in the range to consider consolidation
Consolidation Loopback period - applicable for CONSOLIDATION_BASIC case, the loopback number of bars to look for consolidation
Consolidation Range percent - applicable for CONSOLIDATIO_RANGE_PERCENT, the percent between the high and low in the range to consider consolidation
Plot consolidation - enables plotting of the consolidation (only for debug purposes)
Breakout: (enable, low, high) - the definition of the breakout from the previous consolidation range, the price should be between to determine the breakout as successfull
Upper wick: (enable, percent) - defines the percent of the upper wick compared to the whole candle to allow breakout (if the wick is too big part of the candle we can consider entering the position riskier)
RSI: (enable, length, overbought) - general settings for RSI TA
Volume (enbale, percentage increase, average volume filter en, loopback bars) - percentage of increase of the volume to consider for a breakout. There are two modes - percentage increase compared to the previous bar, or percentage against the average volume for the last loopback bars.
Note that there are many different configuration that you can play with, and I believe this is the strength of the strategy, as it can provide a single solution for different cases and scenarios.
My advice is to try and play with the different options for different markets based on the approach you want to implement and try turning features on/off and tuning them further.
TTS SETTINGS (NEEDED IF USED TO BACKTEST WITH TTS):
The TempalteTradingStrategy is a strategy script developed in Pine by jason5480, which I recommend for quick turn-around of testing different ideas on a proven and tested framework
I cannot give enough credit to the developer for the efforts put in building of the infrastructure, so I advice everyone that wants to use it first to get familiar with the concept and by checking
by checking jason5480's profile www.tradingview.com
The TTS itself is extremely functional and have a lot of properties, so its functionality is beyond the scope of the current script -
Again, I strongly recommend to be thoroughly explored by everyone that plans on using it.
In the nutshell it is a script that can be feed with buy/sell signals from an external indicator script and based on many configuration options it can determine how to execute the trades.
The TTS has many settings that can be applied, so below I will cover only the ones that differ from the default ones, at least according to my testing - do your own research, you may find something even better :)
The current/latest version that I've been using as of writing and testing this script is TTSv48
Settings which differ from the default ones:
Deal Conditions Mode - External (take enter/exit conditions from an external script)
🔌Signal 🛈➡ - BreakoutTrendFollowing: 🔌Signal to TTS (this is the output from the indicator script, according to the TTS convention)
Order Type - STOP (perform stop order)
Distance Method - HHLL (HigherHighLowerLow - in order to set the SL according to the strategy definition from above)
The next are just personal preferences, you can feel free to experiment according to your trading style
Take Profit Targets - 0 (either 100% in or out, no incremental stepping in or out of positions)
Dist Mul|Len Long/Short- 10 (make sure that we don't close on profitable trades by any reason)
Quantity Method - EQUITY (personal backtesting preference is to consider each backtest as a separate portfolio, so determine the position size by 100% of the allocated equity size)
Equity % - 100 (note above)
Hosoda Waves ABCDEThe Hosoda Waves indicator was devised by Goichi Hosoda, who is also the creator of the Ichimoku system, with the idea that previous highs and lows could determine future price ranges that the market would react to.
Hosoda's projections are the NT, N, V, and E waves, which are derived from calculations based on both upward and downward ABC swings.
Hosoda's waves are derived from the following calculations:
NT Wave = C + (C - A)
N Wave = B + (B - A)
V Wave = B + (B - C)
E Wave = C + (B - A)
There are already scripts for the Hosoda waves, and my idea is to project an ABCDE swing simultaneously, meaning projecting three swings:
ABC, indicated with an A, resulting in NT-A, N-A, V-A, E-A.
BCD, indicated with a B, resulting in NT-B, N-B, V-B, E-B.
CDE, indicated with a C, resulting in NT-C, N-C, V-C, E-C.
Once the indicator is applied to the chart, the interactive Pine Script tool version 5 will prompt you to identify 5 points of "low-high-low-high-low" or "high-low-high-low-high," both for upward and downward movements and mixed.
Once clicked, these price points can be moved. If you change the time frame or market instrument, the indicator must be removed because it remains tied to the prices where it was initially drawn.